//
// Created by Administrator on 2025/8/13.
//

#ifndef CTEST_TEST8_H
#define CTEST_TEST8_H


class Test8C1 {

private:
    int a;
    char *name;

public:

    Test8C1(const Test8C1 &a) = default;

    Test8C1(int a, char *name) : a(a), name(name) {};

    template<typename T, typename... VA>
    void foo(T t, VA... args) noexcept {
    }

    //模板方法似乎没法 在cpp文件中定义
//    https://blog.csdn.net/TOPEE362/article/details/126758814
    template<typename T, typename... VA>
    void foo(T t) noexcept {
        return t;
    }

    void foo2();

    friend void foo3(Test8C1 &c);

    int* foo4();
};

typedef struct Test8S1 {
    int age;
    char *name;
} T8S1;


#endif //CTEST_TEST8_H
